/**
 * <copyright>
 * </copyright>
 *
 * $Id$
 */
package srl90a03;

import node1.Node1Package;

import org.eclipse.emf.ecore.EAttribute;
import org.eclipse.emf.ecore.EClass;
import org.eclipse.emf.ecore.EPackage;
import org.eclipse.emf.ecore.EReference;

/**
 * <!-- begin-user-doc -->
 * The <b>Package</b> for the model.
 * It contains accessors for the meta objects to represent
 * <ul>
 *   <li>each class,</li>
 *   <li>each feature of each class,</li>
 *   <li>each enum,</li>
 *   <li>and each data type</li>
 * </ul>
 * <!-- end-user-doc -->
 * @see srl90a03.Srl90a03Factory
 * @model kind="package"
 *        annotation="Comments abstract='null' previous='null' next='null' bibtex='null'"
 * @generated
 */
public interface Srl90a03Package extends EPackage {
	/**
	 * The package name.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 */
	String eNAME = "srl90a03";

	/**
	 * The package namespace URI.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 */
	String eNS_URI = "http://srl90a03";

	/**
	 * The package namespace name.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 */
	String eNS_PREFIX = "srl90a03";

	/**
	 * The singleton instance of the package.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 */
	Srl90a03Package eINSTANCE = srl90a03.impl.Srl90a03PackageImpl.init();

	/**
	 * The meta object id for the '{@link srl90a03.impl.Srl90a03Impl <em>Srl90a03</em>}' class.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @see srl90a03.impl.Srl90a03Impl
	 * @see srl90a03.impl.Srl90a03PackageImpl#getSrl90a03()
	 * @generated
	 */
	int SRL90A03 = 0;

	/**
	 * The feature id for the '<em><b>Root</b></em>' container reference.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int SRL90A03__ROOT = Node1Package.NODE1__ROOT;

	/**
	 * The feature id for the '<em><b>Next</b></em>' reference list.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int SRL90A03__NEXT = Node1Package.NODE1__NEXT;

	/**
	 * The feature id for the '<em><b>Previous</b></em>' reference list.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int SRL90A03__PREVIOUS = Node1Package.NODE1__PREVIOUS;

	/**
	 * The feature id for the '<em><b>Done</b></em>' attribute.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int SRL90A03__DONE = Node1Package.NODE1__DONE;

	/**
	 * The feature id for the '<em><b>Id</b></em>' attribute.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int SRL90A03__ID = Node1Package.NODE1__ID;

	/**
	 * The feature id for the '<em><b>PU</b></em>' reference.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int SRL90A03__PU = Node1Package.NODE1_FEATURE_COUNT + 0;

	/**
	 * The feature id for the '<em><b>Bound</b></em>' reference.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int SRL90A03__BOUND = Node1Package.NODE1_FEATURE_COUNT + 1;

	/**
	 * The feature id for the '<em><b>Tasks</b></em>' containment reference list.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int SRL90A03__TASKS = Node1Package.NODE1_FEATURE_COUNT + 2;

	/**
	 * The feature id for the '<em><b>Blocking Term</b></em>' attribute.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int SRL90A03__BLOCKING_TERM = Node1Package.NODE1_FEATURE_COUNT + 3;

	/**
	 * The feature id for the '<em><b>Value</b></em>' attribute.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int SRL90A03__VALUE = Node1Package.NODE1_FEATURE_COUNT + 4;

	/**
	 * The number of structural features of the '<em>Srl90a03</em>' class.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int SRL90A03_FEATURE_COUNT = Node1Package.NODE1_FEATURE_COUNT + 5;

	/**
	 * The meta object id for the '{@link srl90a03.impl.TaskImpl <em>Task</em>}' class.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @see srl90a03.impl.TaskImpl
	 * @see srl90a03.impl.Srl90a03PackageImpl#getTask()
	 * @generated
	 */
	int TASK = 1;

	/**
	 * The feature id for the '<em><b>Blocking</b></em>' attribute.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int TASK__BLOCKING = Node1Package.ABSTRACT_TASK_FEATURE_COUNT + 0;

	/**
	 * The feature id for the '<em><b>Period</b></em>' attribute.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int TASK__PERIOD = Node1Package.ABSTRACT_TASK_FEATURE_COUNT + 1;

	/**
	 * The number of structural features of the '<em>Task</em>' class.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int TASK_FEATURE_COUNT = Node1Package.ABSTRACT_TASK_FEATURE_COUNT + 2;


	/**
	 * Returns the meta object for class '{@link srl90a03.Srl90a03 <em>Srl90a03</em>}'.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @return the meta object for class '<em>Srl90a03</em>'.
	 * @see srl90a03.Srl90a03
	 * @generated
	 */
	EClass getSrl90a03();

	/**
	 * Returns the meta object for the reference '{@link srl90a03.Srl90a03#getPU <em>PU</em>}'.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @return the meta object for the reference '<em>PU</em>'.
	 * @see srl90a03.Srl90a03#getPU()
	 * @see #getSrl90a03()
	 * @generated
	 */
	EReference getSrl90a03_PU();

	/**
	 * Returns the meta object for the reference '{@link srl90a03.Srl90a03#getBound <em>Bound</em>}'.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @return the meta object for the reference '<em>Bound</em>'.
	 * @see srl90a03.Srl90a03#getBound()
	 * @see #getSrl90a03()
	 * @generated
	 */
	EReference getSrl90a03_Bound();

	/**
	 * Returns the meta object for the containment reference list '{@link srl90a03.Srl90a03#getTasks <em>Tasks</em>}'.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @return the meta object for the containment reference list '<em>Tasks</em>'.
	 * @see srl90a03.Srl90a03#getTasks()
	 * @see #getSrl90a03()
	 * @generated
	 */
	EReference getSrl90a03_Tasks();

	/**
	 * Returns the meta object for the attribute '{@link srl90a03.Srl90a03#getBlockingTerm <em>Blocking Term</em>}'.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @return the meta object for the attribute '<em>Blocking Term</em>'.
	 * @see srl90a03.Srl90a03#getBlockingTerm()
	 * @see #getSrl90a03()
	 * @generated
	 */
	EAttribute getSrl90a03_BlockingTerm();

	/**
	 * Returns the meta object for the attribute '{@link srl90a03.Srl90a03#getValue <em>Value</em>}'.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @return the meta object for the attribute '<em>Value</em>'.
	 * @see srl90a03.Srl90a03#getValue()
	 * @see #getSrl90a03()
	 * @generated
	 */
	EAttribute getSrl90a03_Value();

	/**
	 * Returns the meta object for class '{@link srl90a03.Task <em>Task</em>}'.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @return the meta object for class '<em>Task</em>'.
	 * @see srl90a03.Task
	 * @generated
	 */
	EClass getTask();

	/**
	 * Returns the meta object for the attribute '{@link srl90a03.Task#getBlocking <em>Blocking</em>}'.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @return the meta object for the attribute '<em>Blocking</em>'.
	 * @see srl90a03.Task#getBlocking()
	 * @see #getTask()
	 * @generated
	 */
	EAttribute getTask_Blocking();

	/**
	 * Returns the meta object for the attribute '{@link srl90a03.Task#getPeriod <em>Period</em>}'.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @return the meta object for the attribute '<em>Period</em>'.
	 * @see srl90a03.Task#getPeriod()
	 * @see #getTask()
	 * @generated
	 */
	EAttribute getTask_Period();

	/**
	 * Returns the factory that creates the instances of the model.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @return the factory that creates the instances of the model.
	 * @generated
	 */
	Srl90a03Factory getSrl90a03Factory();

	/**
	 * <!-- begin-user-doc -->
	 * Defines literals for the meta objects that represent
	 * <ul>
	 *   <li>each class,</li>
	 *   <li>each feature of each class,</li>
	 *   <li>each enum,</li>
	 *   <li>and each data type</li>
	 * </ul>
	 * <!-- end-user-doc -->
	 * @generated
	 */
	interface Literals {
		/**
		 * The meta object literal for the '{@link srl90a03.impl.Srl90a03Impl <em>Srl90a03</em>}' class.
		 * <!-- begin-user-doc -->
		 * <!-- end-user-doc -->
		 * @see srl90a03.impl.Srl90a03Impl
		 * @see srl90a03.impl.Srl90a03PackageImpl#getSrl90a03()
		 * @generated
		 */
		EClass SRL90A03 = eINSTANCE.getSrl90a03();

		/**
		 * The meta object literal for the '<em><b>PU</b></em>' reference feature.
		 * <!-- begin-user-doc -->
		 * <!-- end-user-doc -->
		 * @generated
		 */
		EReference SRL90A03__PU = eINSTANCE.getSrl90a03_PU();

		/**
		 * The meta object literal for the '<em><b>Bound</b></em>' reference feature.
		 * <!-- begin-user-doc -->
		 * <!-- end-user-doc -->
		 * @generated
		 */
		EReference SRL90A03__BOUND = eINSTANCE.getSrl90a03_Bound();

		/**
		 * The meta object literal for the '<em><b>Tasks</b></em>' containment reference list feature.
		 * <!-- begin-user-doc -->
		 * <!-- end-user-doc -->
		 * @generated
		 */
		EReference SRL90A03__TASKS = eINSTANCE.getSrl90a03_Tasks();

		/**
		 * The meta object literal for the '<em><b>Blocking Term</b></em>' attribute feature.
		 * <!-- begin-user-doc -->
		 * <!-- end-user-doc -->
		 * @generated
		 */
		EAttribute SRL90A03__BLOCKING_TERM = eINSTANCE.getSrl90a03_BlockingTerm();

		/**
		 * The meta object literal for the '<em><b>Value</b></em>' attribute feature.
		 * <!-- begin-user-doc -->
		 * <!-- end-user-doc -->
		 * @generated
		 */
		EAttribute SRL90A03__VALUE = eINSTANCE.getSrl90a03_Value();

		/**
		 * The meta object literal for the '{@link srl90a03.impl.TaskImpl <em>Task</em>}' class.
		 * <!-- begin-user-doc -->
		 * <!-- end-user-doc -->
		 * @see srl90a03.impl.TaskImpl
		 * @see srl90a03.impl.Srl90a03PackageImpl#getTask()
		 * @generated
		 */
		EClass TASK = eINSTANCE.getTask();

		/**
		 * The meta object literal for the '<em><b>Blocking</b></em>' attribute feature.
		 * <!-- begin-user-doc -->
		 * <!-- end-user-doc -->
		 * @generated
		 */
		EAttribute TASK__BLOCKING = eINSTANCE.getTask_Blocking();

		/**
		 * The meta object literal for the '<em><b>Period</b></em>' attribute feature.
		 * <!-- begin-user-doc -->
		 * <!-- end-user-doc -->
		 * @generated
		 */
		EAttribute TASK__PERIOD = eINSTANCE.getTask_Period();

	}

} //Srl90a03Package
